﻿using System;
namespace Pay.DTO.chpay {
	/// <summary>
	/// 代付请求
	/// </summary>
	public class ch_transfer : ch_base_req {
		public ch_transfer() {
#if DEBUG
			service_id = "tf56pay.enterprise.payForCustomer";
#else
			service_id = "tf56enterprise.enterprise.payForCustomer";
#endif
		}
		/// <summary>
		/// 会员账户号(出账)
		/// </summary>
		public string fromaccountnumber { get; set; }
		/// <summary>
		/// 商户端的流水号，需保证在商户端不重复
		/// </summary>
		public string businessnumber { get; set; }
		/// <summary>
		/// 商品名称
		/// </summary>
		public string subject { get; set; }
		/// <summary>
		/// 交易金额：单位：元，小数两位
		/// </summary>
		public string transactionamount { get; set; }
		/// <summary>
		/// 银行卡号码
		/// </summary>
		public string bankcardnumber { get; set; }
		/// <summary>
		/// 银行卡姓名
		/// </summary>
		public string bankcardname { get; set; }
		/// <summary>
		/// 银行名称
		/// </summary>
		public string bankname { get; set; }
		/// <summary>
		/// 银行卡类型：个人、企业
		/// </summary>
		public string bankcardtype { get; set; }
		/// <summary>
		/// 银行卡借贷类型：储蓄卡、信用卡
		/// </summary>
		public string bankaccounttype { get; set; }
		/// <summary>
		/// 省份(银行卡类型为企业时必填，个人选填)
		/// </summary>
		public string province { get; set; }
		/// <summary>
		/// 城市(银行卡类型为企业时必填，个人选填)
		/// </summary>
		public string city { get; set; }
		/// <summary>
		/// 银行支行名称(银行卡类型为企业时必填，个人选填)
		/// </summary>
		public string branchbankname { get; set; }
		/// <summary>
		/// 银行联行号(选填，银行卡类型为企业时填写可提高处理效率)
		/// </summary>
		public string banknumber { get; set; }
		/// <summary>
		/// 付款状态通知回调地址
		/// </summary>
		public string backurl { get; set; }
	}

	/// <summary>
	/// 代付data返回
	/// </summary>
	public class ch_transfer_resp {
		public string fromaccountnumber { get; set; }
		public string tf_sign { get; set; }
		public string transactiondate { get; set; }
		public string status { get; set; }
		public string frompartyid { get; set; }
		public string subject { get; set; }
		public string inputdate { get; set; }
		public string transactiontype { get; set; }
		public string appid { get; set; }
		public string transactionamount { get; set; }
		public string businessnumber { get; set; }
		public string businessrecordnumber { get; set; }
	}

	/// <summary>
	/// 代付查询请求
	/// </summary>
	public class ch_transfer_query : ch_base_req {
		public ch_transfer_query() {
			service_id = "tf56pay.enterprise.queryTradeStatus";
			tf_timestamp = DateTime.Now.ToString("yyyyMMddHHmmss");
		}
		/// <summary>
		/// 商户端的业务流水号
		/// </summary>
		public string businessnumber { get; set; }
	}

	/// <summary>
	/// 代付查询响应
	/// </summary>
	public class ch_transfer_queryresult {
		/// <summary>
		/// 状态: 失败/处理中/成功/已退票
		/// </summary>
		public string status { get; set; }
		/// <summary>
		/// 支付流水号
		/// </summary>
		public string businessrecordnumber { get; set; }
	}
}
